#
# Copyright 2021 ThoughtWorks, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

class UrlBuilder
  include ActionDispatch::Routing::UrlFor
  include Rails.application.routes.url_helpers

  def request
    OpenStruct.new(host: 'test.host', scheme: 'http', port: 80, ssl?: false)
  end

  def add_hostname(args)
    opts        = args.extract_options! || {}
    opts[:host] = 'test.host'
    [*args, opts]
  end

  self.default_url_options = {
    host: 'test.host',
    protocol: 'http',
    only_path: false
  }
end
